﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Consulta;

namespace Seguridad
{
    public class Seguridad
    {
        private static Seguridad instancia;

        public static Seguridad Instancia
        {
            get
            {
                if (instancia == null)
                {
                    instancia = new Seguridad();
                }
                return instancia;
            }
        }

        private Consultas consultas = Consultas.Instancia;

        // Rol

        public int altaRol(string desc)
        {
            return consultas.altaRol(desc);
        }

        public void bajaRol(int id)
        {
            consultas.bajaRol(id);
        }

        public void updateRol(int id, string desc)
        {
            consultas.updateRol(id, desc);
        }


        // Permiso

        int altaPermiso(string desc)
        {
            return consultas.altaPermiso(desc);
        }

        void bajaPermiso(int id)
        {
            consultas.bajaPermiso(id);
        }

        void updatePermiso(int id, string desc)
        {
            consultas.updatePermiso(id, desc);
        }

        // UsuarioRol

        int altaUsuarioRol(int usuario, int rol)
        {
            return consultas.altaUsuarioRol(usuario, rol);
        }

        void bajaUsuarioRol(int usuario, int rol)
        {
            consultas.bajaUsuarioRol(usuario, rol);
        }

        List<int> traeRolesUsuario(int usuario)
        {
            return consultas.traeRolesUsuario(usuario);
        }

        // RolPermiso

        int altaRolPermiso(int rol, int permiso)
        {
            return consultas.altaRolPermiso(rol, permiso);
        }

        void bajaRolPermiso(int rol, int permiso)
        {
            consultas.bajaRolPermiso(rol, permiso);
        }

        List<int> traePermisosRol(int rol)
        {
            return consultas.traePermisosRol(rol);
        }

    }
}
